package com.pic.mgt.haishin.executer.tar;

import java.io.File;

import com.pic.mgt.haishin.executer.InvalidTerminalException;

public interface DeTarFileChecker {
	/**
	 * 指示 DeTarFile 如何處理該將要解tar的檔案.
	 * @param toBeDetaredFileName 將要進行解tar的檔案名稱(不含路徑)。
	 * @return 若該檔案正確且要解出該檔案，則回傳該檔案要解到的目地目錄，DeTarFile 會將檔案解至所
	 * 	                  提供的目錄下,並進行處理結果通知；若回傳為 null，表示直接忽略該檔案也不進行處理結果通知。
	 * @throws InvalidTerminalException 表示該該檔案包含錯誤的端末ID(可能為不存在或失效的端末ID)。
	 * 		   拋出例外會 DeTarFile 將不會解出該檔案,但同樣會進行處理結果通知。
	 */
	File checkDeTarFile(String toBeDetaredFileName) throws InvalidTerminalException;
}
